package com.ourteam.education.dao;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import net.dao.BaseQueryBean;
import net.dao.BaseWhereCriterion;
import net.dao.IDataAccessInterface;
import org.apache.commons.lang.StringUtils;
/**
 * Template Name : DAO查询对象
 * Template Version : 1
 * Template Last Modfiy Date : Sat Aug 19 10:06:32 CST 2017
 * Auto Generate Date : 2019-09-22 15:15:08
  * Warning ! This file will be overwrite when regenerate !
  * 
 */
public class ClassTeacherRelateDAOQueryBean extends BaseQueryBean {
    
    public ClassTeacherRelateDAOQueryBean() {
		super();
    }
	
    public ClassTeacherRelateDAOQueryBean(BaseQueryBean aQueryBean) {
        super(aQueryBean);
    }
    
    public ClassTeacherRelateDAOQueryBean(BaseQueryBean aQueryBean,Map tableReplaceMap) {
        super(aQueryBean,tableReplaceMap);
    }
    
    public Criteria createCriteria() {
        
	    Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
                  oredCriteria.add(criteria);
            }
        return criteria;
     }
	
    protected Criteria createCriteriaInternal() {
	  return new Criteria(this);
    }
    
        
        
    	
		
	    
    public void addIdSelectProperty(){
		addIdSelectProperty("id");
	}
	
    public void addIdSelectProperty(String aAlias){
		if(StringUtils.isNotBlank(aAlias)){
			addSelectProperty(IClassTeacherRelateDAO.Id,aAlias);
		}
		else{
			addSelectProperty(IClassTeacherRelateDAO.Id,"id");
	    }
    }
    
       
		
		
	    
    public void addClassIdSelectProperty(){
		addClassIdSelectProperty("classId");
	}
	
    public void addClassIdSelectProperty(String aAlias){
		if(StringUtils.isNotBlank(aAlias)){
			addSelectProperty(IClassTeacherRelateDAO.ClassId,aAlias);
		}
		else{
			addSelectProperty(IClassTeacherRelateDAO.ClassId,"classId");
	    }
    }
    
       
		
		
	    
    public void addTeacherIdSelectProperty(){
		addTeacherIdSelectProperty("teacherId");
	}
	
    public void addTeacherIdSelectProperty(String aAlias){
		if(StringUtils.isNotBlank(aAlias)){
			addSelectProperty(IClassTeacherRelateDAO.TeacherId,aAlias);
		}
		else{
			addSelectProperty(IClassTeacherRelateDAO.TeacherId,"teacherId");
	    }
    }
    
       
		
		
	public void addAllSelectProperties(){
		
		
	    addIdSelectProperty();
   
		
		
	    addClassIdSelectProperty();
   
		
		
	    addTeacherIdSelectProperty();
   
		
	    }
    
    public static class Criteria extends BaseWhereCriterion<ClassTeacherRelateDAOQueryBean> {
	
        protected Criteria(ClassTeacherRelateDAOQueryBean aParentObject) {
		    super(aParentObject);
        }
        
                  
            	
    	    	
    	        
                
        public Criteria andIdIsNull() {
            addCriterion(IClassTeacherRelateDAO.Id + " is null");
            return this;
        }
        public Criteria andIdIsNotNull() {
            addCriterion(IClassTeacherRelateDAO.Id + " is not null");
            return this;
        }
    
        public Criteria andIdIsNotEmpty() {        
            addCriterion(IClassTeacherRelateDAO.Id + " is not null AND " + IClassTeacherRelateDAO.Id + " <> ''");
            return this;
        }
    		
    	public Criteria andIdIsEmpty() {       
            addCriterion("(" + IClassTeacherRelateDAO.Id + " is null OR " + IClassTeacherRelateDAO.Id + " = '')");
            return this;
        }
        
                
                        
                        
                                
        public Criteria andIdEqualTo(long value) {
        	return andIdEqualTo(Long.valueOf(value));
        }
               public Criteria andIdEqualTo(java.lang.Long value) {
        				
            addCriterion(IClassTeacherRelateDAO.Id + " = ", value, "id");
            return this;
        }
        
        public Criteria andIdEqualToForeignKey(java.lang.String key) {
	    StringBuffer str = new StringBuffer(IClassTeacherRelateDAO.Id);
	    str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());
            return this;
        }
		
		public Criteria andIdEqualTo(BaseQueryBean subQueryBean,
				IDataAccessInterface<?, ?> dao) {
			addCriterion(IClassTeacherRelateDAO.Id + " = ", subQueryBean, dao);
			return this;
		}
                
        public Criteria andIdNotEqualTo(long value) {
        	return andIdNotEqualTo(Long.valueOf(value));
        }
                public Criteria andIdNotEqualTo(java.lang.Long value) {
        	        
            addCriterion(IClassTeacherRelateDAO.Id + " <>", value, "id");
            return this;
        }
               
        public Criteria andIdNotEqualToOrIsNull(long value) {
        	return andIdNotEqualToOrIsNull(Long.valueOf(value));
        }
                
        public Criteria andIdNotEqualToOrIsNull(java.lang.Long value) {
        	        
            addCriterion(IClassTeacherRelateDAO.Id + " is null OR " + IClassTeacherRelateDAO.Id + " <>", value, "id");
            return this;
        }
        
        public Criteria andIdNotEqualToForeignKey(java.lang.String key) {
	    StringBuffer str = new StringBuffer(IClassTeacherRelateDAO.Id);
	    str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());
            return this;
        }
		
		public Criteria andIdNotEqualTo(BaseQueryBean subQueryBean,
				IDataAccessInterface<?, ?> dao) {
			addCriterion(IClassTeacherRelateDAO.Id + " <> ", subQueryBean, dao);
			return this;
		}
               
        public Criteria andIdGreaterThan(long value) {
        	return andIdGreaterThan(Long.valueOf(value));
        }
                public Criteria andIdGreaterThan(java.lang.Long value) {
        				
            addCriterion(IClassTeacherRelateDAO.Id + " >", value, "id");
            return this;
        }
        
        public Criteria andIdGreaterThanForeignKey(java.lang.String key) {
	    StringBuffer str = new StringBuffer(IClassTeacherRelateDAO.Id);
	    str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());
            return this;
        }
		
		public Criteria andIdGreaterThan(BaseQueryBean subQueryBean,
				IDataAccessInterface<?, ?> dao) {
			addCriterion(IClassTeacherRelateDAO.Id + " > ", subQueryBean, dao);
			return this;
		}
               
        public Criteria andIdGreaterThanOrEqualTo(long value) {
        	return andIdGreaterThanOrEqualTo(Long.valueOf(value));
        }
                public Criteria andIdGreaterThanOrEqualTo(java.lang.Long value) {
        				
            addCriterion(IClassTeacherRelateDAO.Id + " >=", value, "id");
            return this;
        }
        
        public Criteria andIdGreaterThanOrEqualToForeignKey(java.lang.String key) {
			StringBuffer str = new StringBuffer(IClassTeacherRelateDAO.Id);
			str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());
            return this;
        }
		
		public Criteria andIdGreaterThanOrEqualTo(BaseQueryBean subQueryBean,
				IDataAccessInterface<?, ?> dao) {
			addCriterion(IClassTeacherRelateDAO.Id + " >= ", subQueryBean, dao);
			return this;
		}
        
                
        public Criteria andIdLessThan(long value) {
        	return andIdLessThan(Long.valueOf(value));
        }
                public Criteria andIdLessThan(java.lang.Long value) {
        				
            addCriterion(IClassTeacherRelateDAO.Id + " <", value, "id");
            return this;
        }
        
        public Criteria andIdLessThanForeignKey(java.lang.String key) {
			StringBuffer str = new StringBuffer(IClassTeacherRelateDAO.Id);
			str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());
            return this;
        }
		
		public Criteria andIdLessThan(BaseQueryBean subQueryBean,
				IDataAccessInterface<?, ?> dao) {
			addCriterion(IClassTeacherRelateDAO.Id + " < ", subQueryBean, dao);
			return this;
		}
        
                
        public Criteria andIdLessThanOrEqualTo(long value) {
        	return andIdLessThanOrEqualTo(Long.valueOf(value));
        }
                public Criteria andIdLessThanOrEqualTo(java.lang.Long value) {
        				
            addCriterion(IClassTeacherRelateDAO.Id + " <=", value, "id");
            return this;
        }
        
        public Criteria andIdLessThanOrEqualToForeignKey(java.lang.String key) {
			StringBuffer str = new StringBuffer(IClassTeacherRelateDAO.Id);
			str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());
            return this;
        }
		
		public Criteria andIdLessThanOrEqualTo(BaseQueryBean subQueryBean,
				IDataAccessInterface<?, ?> dao) {
			addCriterion(IClassTeacherRelateDAO.Id + " <= ", subQueryBean, dao);
			return this;
		}
		
		        
                
        public Criteria andIdIn(long[] values) {
        	if(values.length == 1){
        		return andIdEqualTo((java.lang.Long)values[0]);
        	}
        	else{
            	addCriterion(IClassTeacherRelateDAO.Id + " in", values, "id");
            	return this;
            }
        }
        
        public Criteria andIdNotIn(long[] values) {
        	if(values.length == 1){
        		return andIdNotEqualTo((java.lang.Long)values[0]);
        	}
        	else{
            	addCriterion(IClassTeacherRelateDAO.Id + " not in", values, "id");
            	return this;
            }
        }
        
                public Criteria andIdIn(List<java.lang.Long> values) {
        	
        	if(values.size() == 1){
        		return andIdEqualTo(values.get(0));
        	}
        	else{
            	addCriterion(IClassTeacherRelateDAO.Id + " in", values, "id");
            	return this;
            }
        }
        public Criteria andIdNotIn(List<java.lang.Long> values) {
        	if(values.size() == 1){
        		return andIdNotEqualTo(values.get(0));
        	}
        	else{
            	addCriterion(IClassTeacherRelateDAO.Id + " not in", values, "id");
            	return this;
            }
        }
        
        public Criteria andIdIn(java.lang.Long[] values) {
        	
        	if(values.length == 1){
        		return andIdEqualTo(values[0]);
        	}
        	else{
            	addCriterion(IClassTeacherRelateDAO.Id + " in", Arrays.asList(values), "id");
            	return this;
            }
        }
        public Criteria andIdNotIn(java.lang.Long[] values) {
        	if(values.length == 1){
        		return andIdNotEqualTo(values[0]);
        	}
        	else{
            	addCriterion(IClassTeacherRelateDAO.Id + " not in", Arrays.asList(values), "id");
            	return this;
            }
        }
		
		public Criteria andIdIn(BaseQueryBean subQueryBean,
				IDataAccessInterface<?, ?> dao) {
			addCriterion(IClassTeacherRelateDAO.Id + " in ", subQueryBean, dao);
			return this;
		}
		
		public Criteria andIdNotIn(BaseQueryBean subQueryBean,
				IDataAccessInterface<?, ?> dao) {
			addCriterion(IClassTeacherRelateDAO.Id + " not in ", subQueryBean, dao);
			return this;
		}
        
                
        public Criteria andIdBetween(long value1,long value2) {
        	addCriterion(IClassTeacherRelateDAO.Id + " between", value1, value2, "id");
            return this;
        }
                public Criteria andIdBetween(java.lang.Long value1, java.lang.Long value2) {
            addCriterion(IClassTeacherRelateDAO.Id + " between", value1, value2, "id");
            return this;
        }
        
                
        public Criteria andIdNotBetween(long value1,long value2) {
        	addCriterion(IClassTeacherRelateDAO.Id + " not between", value1, value2, "id");
            return this;
        }
                public Criteria andIdNotBetween(java.lang.Long value1, java.lang.Long value2) {
            addCriterion(IClassTeacherRelateDAO.Id + " not between", value1, value2, "id");
            return this;
        }
        
            	
    	    	
    	    	
    	        
                
        public Criteria andClassIdIsNull() {
            addCriterion(IClassTeacherRelateDAO.ClassId + " is null");
            return this;
        }
        public Criteria andClassIdIsNotNull() {
            addCriterion(IClassTeacherRelateDAO.ClassId + " is not null");
            return this;
        }
    
        public Criteria andClassIdIsNotEmpty() {        
            addCriterion(IClassTeacherRelateDAO.ClassId + " is not null AND " + IClassTeacherRelateDAO.ClassId + " <> ''");
            return this;
        }
    		
    	public Criteria andClassIdIsEmpty() {       
            addCriterion("(" + IClassTeacherRelateDAO.ClassId + " is null OR " + IClassTeacherRelateDAO.ClassId + " = '')");
            return this;
        }
        
                
                        
                        
                                
        public Criteria andClassIdEqualTo(long value) {
        	return andClassIdEqualTo(Long.valueOf(value));
        }
               public Criteria andClassIdEqualTo(java.lang.Long value) {
        				
            addCriterion(IClassTeacherRelateDAO.ClassId + " = ", value, "classId");
            return this;
        }
        
        public Criteria andClassIdEqualToForeignKey(java.lang.String key) {
	    StringBuffer str = new StringBuffer(IClassTeacherRelateDAO.ClassId);
	    str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());
            return this;
        }
		
		public Criteria andClassIdEqualTo(BaseQueryBean subQueryBean,
				IDataAccessInterface<?, ?> dao) {
			addCriterion(IClassTeacherRelateDAO.ClassId + " = ", subQueryBean, dao);
			return this;
		}
                
        public Criteria andClassIdNotEqualTo(long value) {
        	return andClassIdNotEqualTo(Long.valueOf(value));
        }
                public Criteria andClassIdNotEqualTo(java.lang.Long value) {
        	        
            addCriterion(IClassTeacherRelateDAO.ClassId + " <>", value, "classId");
            return this;
        }
               
        public Criteria andClassIdNotEqualToOrIsNull(long value) {
        	return andClassIdNotEqualToOrIsNull(Long.valueOf(value));
        }
                
        public Criteria andClassIdNotEqualToOrIsNull(java.lang.Long value) {
        	        
            addCriterion(IClassTeacherRelateDAO.ClassId + " is null OR " + IClassTeacherRelateDAO.ClassId + " <>", value, "classId");
            return this;
        }
        
        public Criteria andClassIdNotEqualToForeignKey(java.lang.String key) {
	    StringBuffer str = new StringBuffer(IClassTeacherRelateDAO.ClassId);
	    str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());
            return this;
        }
		
		public Criteria andClassIdNotEqualTo(BaseQueryBean subQueryBean,
				IDataAccessInterface<?, ?> dao) {
			addCriterion(IClassTeacherRelateDAO.ClassId + " <> ", subQueryBean, dao);
			return this;
		}
               
        public Criteria andClassIdGreaterThan(long value) {
        	return andClassIdGreaterThan(Long.valueOf(value));
        }
                public Criteria andClassIdGreaterThan(java.lang.Long value) {
        				
            addCriterion(IClassTeacherRelateDAO.ClassId + " >", value, "classId");
            return this;
        }
        
        public Criteria andClassIdGreaterThanForeignKey(java.lang.String key) {
	    StringBuffer str = new StringBuffer(IClassTeacherRelateDAO.ClassId);
	    str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());
            return this;
        }
		
		public Criteria andClassIdGreaterThan(BaseQueryBean subQueryBean,
				IDataAccessInterface<?, ?> dao) {
			addCriterion(IClassTeacherRelateDAO.ClassId + " > ", subQueryBean, dao);
			return this;
		}
               
        public Criteria andClassIdGreaterThanOrEqualTo(long value) {
        	return andClassIdGreaterThanOrEqualTo(Long.valueOf(value));
        }
                public Criteria andClassIdGreaterThanOrEqualTo(java.lang.Long value) {
        				
            addCriterion(IClassTeacherRelateDAO.ClassId + " >=", value, "classId");
            return this;
        }
        
        public Criteria andClassIdGreaterThanOrEqualToForeignKey(java.lang.String key) {
			StringBuffer str = new StringBuffer(IClassTeacherRelateDAO.ClassId);
			str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());
            return this;
        }
		
		public Criteria andClassIdGreaterThanOrEqualTo(BaseQueryBean subQueryBean,
				IDataAccessInterface<?, ?> dao) {
			addCriterion(IClassTeacherRelateDAO.ClassId + " >= ", subQueryBean, dao);
			return this;
		}
        
                
        public Criteria andClassIdLessThan(long value) {
        	return andClassIdLessThan(Long.valueOf(value));
        }
                public Criteria andClassIdLessThan(java.lang.Long value) {
        				
            addCriterion(IClassTeacherRelateDAO.ClassId + " <", value, "classId");
            return this;
        }
        
        public Criteria andClassIdLessThanForeignKey(java.lang.String key) {
			StringBuffer str = new StringBuffer(IClassTeacherRelateDAO.ClassId);
			str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());
            return this;
        }
		
		public Criteria andClassIdLessThan(BaseQueryBean subQueryBean,
				IDataAccessInterface<?, ?> dao) {
			addCriterion(IClassTeacherRelateDAO.ClassId + " < ", subQueryBean, dao);
			return this;
		}
        
                
        public Criteria andClassIdLessThanOrEqualTo(long value) {
        	return andClassIdLessThanOrEqualTo(Long.valueOf(value));
        }
                public Criteria andClassIdLessThanOrEqualTo(java.lang.Long value) {
        				
            addCriterion(IClassTeacherRelateDAO.ClassId + " <=", value, "classId");
            return this;
        }
        
        public Criteria andClassIdLessThanOrEqualToForeignKey(java.lang.String key) {
			StringBuffer str = new StringBuffer(IClassTeacherRelateDAO.ClassId);
			str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());
            return this;
        }
		
		public Criteria andClassIdLessThanOrEqualTo(BaseQueryBean subQueryBean,
				IDataAccessInterface<?, ?> dao) {
			addCriterion(IClassTeacherRelateDAO.ClassId + " <= ", subQueryBean, dao);
			return this;
		}
		
		        
                
        public Criteria andClassIdIn(long[] values) {
        	if(values.length == 1){
        		return andClassIdEqualTo((java.lang.Long)values[0]);
        	}
        	else{
            	addCriterion(IClassTeacherRelateDAO.ClassId + " in", values, "classId");
            	return this;
            }
        }
        
        public Criteria andClassIdNotIn(long[] values) {
        	if(values.length == 1){
        		return andClassIdNotEqualTo((java.lang.Long)values[0]);
        	}
        	else{
            	addCriterion(IClassTeacherRelateDAO.ClassId + " not in", values, "classId");
            	return this;
            }
        }
        
                public Criteria andClassIdIn(List<java.lang.Long> values) {
        	
        	if(values.size() == 1){
        		return andClassIdEqualTo(values.get(0));
        	}
        	else{
            	addCriterion(IClassTeacherRelateDAO.ClassId + " in", values, "classId");
            	return this;
            }
        }
        public Criteria andClassIdNotIn(List<java.lang.Long> values) {
        	if(values.size() == 1){
        		return andClassIdNotEqualTo(values.get(0));
        	}
        	else{
            	addCriterion(IClassTeacherRelateDAO.ClassId + " not in", values, "classId");
            	return this;
            }
        }
        
        public Criteria andClassIdIn(java.lang.Long[] values) {
        	
        	if(values.length == 1){
        		return andClassIdEqualTo(values[0]);
        	}
        	else{
            	addCriterion(IClassTeacherRelateDAO.ClassId + " in", Arrays.asList(values), "classId");
            	return this;
            }
        }
        public Criteria andClassIdNotIn(java.lang.Long[] values) {
        	if(values.length == 1){
        		return andClassIdNotEqualTo(values[0]);
        	}
        	else{
            	addCriterion(IClassTeacherRelateDAO.ClassId + " not in", Arrays.asList(values), "classId");
            	return this;
            }
        }
		
		public Criteria andClassIdIn(BaseQueryBean subQueryBean,
				IDataAccessInterface<?, ?> dao) {
			addCriterion(IClassTeacherRelateDAO.ClassId + " in ", subQueryBean, dao);
			return this;
		}
		
		public Criteria andClassIdNotIn(BaseQueryBean subQueryBean,
				IDataAccessInterface<?, ?> dao) {
			addCriterion(IClassTeacherRelateDAO.ClassId + " not in ", subQueryBean, dao);
			return this;
		}
        
                
        public Criteria andClassIdBetween(long value1,long value2) {
        	addCriterion(IClassTeacherRelateDAO.ClassId + " between", value1, value2, "classId");
            return this;
        }
                public Criteria andClassIdBetween(java.lang.Long value1, java.lang.Long value2) {
            addCriterion(IClassTeacherRelateDAO.ClassId + " between", value1, value2, "classId");
            return this;
        }
        
                
        public Criteria andClassIdNotBetween(long value1,long value2) {
        	addCriterion(IClassTeacherRelateDAO.ClassId + " not between", value1, value2, "classId");
            return this;
        }
                public Criteria andClassIdNotBetween(java.lang.Long value1, java.lang.Long value2) {
            addCriterion(IClassTeacherRelateDAO.ClassId + " not between", value1, value2, "classId");
            return this;
        }
        
            	
    	    	
    	    	
    	        
                
        public Criteria andTeacherIdIsNull() {
            addCriterion(IClassTeacherRelateDAO.TeacherId + " is null");
            return this;
        }
        public Criteria andTeacherIdIsNotNull() {
            addCriterion(IClassTeacherRelateDAO.TeacherId + " is not null");
            return this;
        }
    
        public Criteria andTeacherIdIsNotEmpty() {        
            addCriterion(IClassTeacherRelateDAO.TeacherId + " is not null AND " + IClassTeacherRelateDAO.TeacherId + " <> ''");
            return this;
        }
    		
    	public Criteria andTeacherIdIsEmpty() {       
            addCriterion("(" + IClassTeacherRelateDAO.TeacherId + " is null OR " + IClassTeacherRelateDAO.TeacherId + " = '')");
            return this;
        }
        
                
                        
                        
                                
        public Criteria andTeacherIdEqualTo(long value) {
        	return andTeacherIdEqualTo(Long.valueOf(value));
        }
               public Criteria andTeacherIdEqualTo(java.lang.Long value) {
        				
            addCriterion(IClassTeacherRelateDAO.TeacherId + " = ", value, "teacherId");
            return this;
        }
        
        public Criteria andTeacherIdEqualToForeignKey(java.lang.String key) {
	    StringBuffer str = new StringBuffer(IClassTeacherRelateDAO.TeacherId);
	    str.append(" = ").append(key);
            addForeignKeyCriterion(str.toString());
            return this;
        }
		
		public Criteria andTeacherIdEqualTo(BaseQueryBean subQueryBean,
				IDataAccessInterface<?, ?> dao) {
			addCriterion(IClassTeacherRelateDAO.TeacherId + " = ", subQueryBean, dao);
			return this;
		}
                
        public Criteria andTeacherIdNotEqualTo(long value) {
        	return andTeacherIdNotEqualTo(Long.valueOf(value));
        }
                public Criteria andTeacherIdNotEqualTo(java.lang.Long value) {
        	        
            addCriterion(IClassTeacherRelateDAO.TeacherId + " <>", value, "teacherId");
            return this;
        }
               
        public Criteria andTeacherIdNotEqualToOrIsNull(long value) {
        	return andTeacherIdNotEqualToOrIsNull(Long.valueOf(value));
        }
                
        public Criteria andTeacherIdNotEqualToOrIsNull(java.lang.Long value) {
        	        
            addCriterion(IClassTeacherRelateDAO.TeacherId + " is null OR " + IClassTeacherRelateDAO.TeacherId + " <>", value, "teacherId");
            return this;
        }
        
        public Criteria andTeacherIdNotEqualToForeignKey(java.lang.String key) {
	    StringBuffer str = new StringBuffer(IClassTeacherRelateDAO.TeacherId);
	    str.append(" <> ").append(key);
            addForeignKeyCriterion(str.toString());
            return this;
        }
		
		public Criteria andTeacherIdNotEqualTo(BaseQueryBean subQueryBean,
				IDataAccessInterface<?, ?> dao) {
			addCriterion(IClassTeacherRelateDAO.TeacherId + " <> ", subQueryBean, dao);
			return this;
		}
               
        public Criteria andTeacherIdGreaterThan(long value) {
        	return andTeacherIdGreaterThan(Long.valueOf(value));
        }
                public Criteria andTeacherIdGreaterThan(java.lang.Long value) {
        				
            addCriterion(IClassTeacherRelateDAO.TeacherId + " >", value, "teacherId");
            return this;
        }
        
        public Criteria andTeacherIdGreaterThanForeignKey(java.lang.String key) {
	    StringBuffer str = new StringBuffer(IClassTeacherRelateDAO.TeacherId);
	    str.append(" > ").append(key);
            addForeignKeyCriterion(str.toString());
            return this;
        }
		
		public Criteria andTeacherIdGreaterThan(BaseQueryBean subQueryBean,
				IDataAccessInterface<?, ?> dao) {
			addCriterion(IClassTeacherRelateDAO.TeacherId + " > ", subQueryBean, dao);
			return this;
		}
               
        public Criteria andTeacherIdGreaterThanOrEqualTo(long value) {
        	return andTeacherIdGreaterThanOrEqualTo(Long.valueOf(value));
        }
                public Criteria andTeacherIdGreaterThanOrEqualTo(java.lang.Long value) {
        				
            addCriterion(IClassTeacherRelateDAO.TeacherId + " >=", value, "teacherId");
            return this;
        }
        
        public Criteria andTeacherIdGreaterThanOrEqualToForeignKey(java.lang.String key) {
			StringBuffer str = new StringBuffer(IClassTeacherRelateDAO.TeacherId);
			str.append(" >= ").append(key);
            addForeignKeyCriterion(str.toString());
            return this;
        }
		
		public Criteria andTeacherIdGreaterThanOrEqualTo(BaseQueryBean subQueryBean,
				IDataAccessInterface<?, ?> dao) {
			addCriterion(IClassTeacherRelateDAO.TeacherId + " >= ", subQueryBean, dao);
			return this;
		}
        
                
        public Criteria andTeacherIdLessThan(long value) {
        	return andTeacherIdLessThan(Long.valueOf(value));
        }
                public Criteria andTeacherIdLessThan(java.lang.Long value) {
        				
            addCriterion(IClassTeacherRelateDAO.TeacherId + " <", value, "teacherId");
            return this;
        }
        
        public Criteria andTeacherIdLessThanForeignKey(java.lang.String key) {
			StringBuffer str = new StringBuffer(IClassTeacherRelateDAO.TeacherId);
			str.append(" < ").append(key);
            addForeignKeyCriterion(str.toString());
            return this;
        }
		
		public Criteria andTeacherIdLessThan(BaseQueryBean subQueryBean,
				IDataAccessInterface<?, ?> dao) {
			addCriterion(IClassTeacherRelateDAO.TeacherId + " < ", subQueryBean, dao);
			return this;
		}
        
                
        public Criteria andTeacherIdLessThanOrEqualTo(long value) {
        	return andTeacherIdLessThanOrEqualTo(Long.valueOf(value));
        }
                public Criteria andTeacherIdLessThanOrEqualTo(java.lang.Long value) {
        				
            addCriterion(IClassTeacherRelateDAO.TeacherId + " <=", value, "teacherId");
            return this;
        }
        
        public Criteria andTeacherIdLessThanOrEqualToForeignKey(java.lang.String key) {
			StringBuffer str = new StringBuffer(IClassTeacherRelateDAO.TeacherId);
			str.append(" <= ").append(key);
            addForeignKeyCriterion(str.toString());
            return this;
        }
		
		public Criteria andTeacherIdLessThanOrEqualTo(BaseQueryBean subQueryBean,
				IDataAccessInterface<?, ?> dao) {
			addCriterion(IClassTeacherRelateDAO.TeacherId + " <= ", subQueryBean, dao);
			return this;
		}
		
		        
                
        public Criteria andTeacherIdIn(long[] values) {
        	if(values.length == 1){
        		return andTeacherIdEqualTo((java.lang.Long)values[0]);
        	}
        	else{
            	addCriterion(IClassTeacherRelateDAO.TeacherId + " in", values, "teacherId");
            	return this;
            }
        }
        
        public Criteria andTeacherIdNotIn(long[] values) {
        	if(values.length == 1){
        		return andTeacherIdNotEqualTo((java.lang.Long)values[0]);
        	}
        	else{
            	addCriterion(IClassTeacherRelateDAO.TeacherId + " not in", values, "teacherId");
            	return this;
            }
        }
        
                public Criteria andTeacherIdIn(List<java.lang.Long> values) {
        	
        	if(values.size() == 1){
        		return andTeacherIdEqualTo(values.get(0));
        	}
        	else{
            	addCriterion(IClassTeacherRelateDAO.TeacherId + " in", values, "teacherId");
            	return this;
            }
        }
        public Criteria andTeacherIdNotIn(List<java.lang.Long> values) {
        	if(values.size() == 1){
        		return andTeacherIdNotEqualTo(values.get(0));
        	}
        	else{
            	addCriterion(IClassTeacherRelateDAO.TeacherId + " not in", values, "teacherId");
            	return this;
            }
        }
        
        public Criteria andTeacherIdIn(java.lang.Long[] values) {
        	
        	if(values.length == 1){
        		return andTeacherIdEqualTo(values[0]);
        	}
        	else{
            	addCriterion(IClassTeacherRelateDAO.TeacherId + " in", Arrays.asList(values), "teacherId");
            	return this;
            }
        }
        public Criteria andTeacherIdNotIn(java.lang.Long[] values) {
        	if(values.length == 1){
        		return andTeacherIdNotEqualTo(values[0]);
        	}
        	else{
            	addCriterion(IClassTeacherRelateDAO.TeacherId + " not in", Arrays.asList(values), "teacherId");
            	return this;
            }
        }
		
		public Criteria andTeacherIdIn(BaseQueryBean subQueryBean,
				IDataAccessInterface<?, ?> dao) {
			addCriterion(IClassTeacherRelateDAO.TeacherId + " in ", subQueryBean, dao);
			return this;
		}
		
		public Criteria andTeacherIdNotIn(BaseQueryBean subQueryBean,
				IDataAccessInterface<?, ?> dao) {
			addCriterion(IClassTeacherRelateDAO.TeacherId + " not in ", subQueryBean, dao);
			return this;
		}
        
                
        public Criteria andTeacherIdBetween(long value1,long value2) {
        	addCriterion(IClassTeacherRelateDAO.TeacherId + " between", value1, value2, "teacherId");
            return this;
        }
                public Criteria andTeacherIdBetween(java.lang.Long value1, java.lang.Long value2) {
            addCriterion(IClassTeacherRelateDAO.TeacherId + " between", value1, value2, "teacherId");
            return this;
        }
        
                
        public Criteria andTeacherIdNotBetween(long value1,long value2) {
        	addCriterion(IClassTeacherRelateDAO.TeacherId + " not between", value1, value2, "teacherId");
            return this;
        }
                public Criteria andTeacherIdNotBetween(java.lang.Long value1, java.lang.Long value2) {
            addCriterion(IClassTeacherRelateDAO.TeacherId + " not between", value1, value2, "teacherId");
            return this;
        }
        
            	
    	    	
    	        
        
    }
	
    
}